package com.quanyan.stadium.api.req.gameEventConfig;

import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * Created by xiao.lai on 16/5/26.
 *
 * 创建赛事父类对象
 */
public class ReqCreateGameEvent implements Serializable {

    private static final long serialVersionUID = -3099008226231364380L;
    /**
     * 赛事所属栏目
     */
    @NotNull
    private Integer categoryId;

    /**
     * 赛事开始时间
     */
    @NotNull
    private long startTime;

    /**
     * 赛事结束时间
     */
    private long endTime;

    /**
     * 赛事单价/总价
     */
    @NotNull
    @DecimalMin(message = "最小价格不小于0元", value = "0.00")
    @DecimalMax(message = "最大价格不超过100000元", value = "100000.00")
    private BigDecimal price;

    /**
     * 比赛队伍数目
     * */
    @NotNull
    @Min(value=1, message="报名队伍/人最小为1")
    private Integer teamLimitNum;

    /**
     * 比赛等级
     */
    @NotNull
    private Byte gameGradeLevel;


    /**
     * 玩法类型
     * */
    @NotNull
    private Byte gameCategoryType;


    /**
     * 赛制类型
     * */
    @NotNull
    private Byte gameSystemType;

    /**
     * 举办方联系电话
     *
     * */
    @NotNull
    private String hostMobile;

    private String comments;


    public Integer getCategoryId() {
        return categoryId;
    }

    public void setCategoryId(Integer categoryId) {
        this.categoryId = categoryId;
    }

    public long getStartTime() {
        return startTime;
    }

    public void setStartTime(long startTime) {
        this.startTime = startTime;
    }

    public long getEndTime() {
        return endTime;
    }

    public void setEndTime(long endTime) {
        this.endTime = endTime;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public Integer getTeamLimitNum() {
        return teamLimitNum;
    }

    public void setTeamLimitNum(Integer teamLimitNum) {
        this.teamLimitNum = teamLimitNum;
    }

    public Byte getGameGradeLevel() {
        return gameGradeLevel;
    }

    public void setGameGradeLevel(Byte gameGradeLevel) {
        this.gameGradeLevel = gameGradeLevel;
    }

    public Byte getGameCategoryType() {
        return gameCategoryType;
    }

    public void setGameCategoryType(Byte gameCategoryType) {
        this.gameCategoryType = gameCategoryType;
    }

    public Byte getGameSystemType() {
        return gameSystemType;
    }

    public void setGameSystemType(Byte gameSystemType) {
        this.gameSystemType = gameSystemType;
    }

    public String getHostMobile() {
        return hostMobile;
    }

    public void setHostMobile(String hostMobile) {
        this.hostMobile = hostMobile;
    }

    public String getComments() {
        return comments;
    }

    public void setComments(String comments) {
        this.comments = comments;
    }
}
